﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Rance
{
    public class UI战斗:UIObject
    {
        public int 最大回合数 { get; set; }
        public UI行动顺序 行动顺序 { get; set; }
        public bool 是否结束 { get; set; }

        private int _当前回合;
        public int 当前回合
        {
            get { return _当前回合; }
            set
            {
                if (_当前回合 != value) { _当前回合 = value; SendPropertyChanged("当前回合"); SendPropertyChanged("回合"); }
            }
        }

        public string 回合 
        {
            get 
            {
                return string.Format("{0}/{1}", 当前回合, 最大回合数);
            }
        }

        private int _战场修正;
        public int 战场修正
        {
            get { return _战场修正; }
            set
            {
                if (_战场修正 != value) { _战场修正 = value; SendPropertyChanged("战场修正");  }
            }
        }

        private int _战果;
        public int 战果
        {
            get { return _战果; }
            set
            {
                if (_战果 != value) { _战果 = value; SendPropertyChanged("战果"); }
            }
        }

        public string TeamA { get; set; }
        public string TeamB { get; set; }

        public Guid TeamAID { get; set; }
        public Guid TeamBID { get; set; }

        public List<UI角色> TeamAList;
        public List<UI角色> TeamBList;

        public UI角色 Current角色 { get; set; }

        private UI角色 select角色;
        public UI角色 Select角色
        {
            get { return select角色; }
            set
            {
                if (select角色 != value) { select角色 = value; SendPropertyChanged("Select角色"); }
            }
        }

        #region Team A人物

        private UI角色 _teamA左军先锋;
        public UI角色 TeamA左军先锋
        {
            get { return _teamA左军先锋; }
            set
            {
                if (_teamA左军先锋 != value) { _teamA左军先锋 = value; SendPropertyChanged("TeamA左军先锋"); }
            }
        }

        private UI角色 _teamA左军后卫;
        public UI角色 TeamA左军后卫
        {
            get { return _teamA左军后卫; }
            set
            {
                if (_teamA左军后卫 != value) { _teamA左军后卫 = value; SendPropertyChanged("TeamA左军后卫"); }
            }
        }

        private UI角色 _teamA中军先锋;
        public UI角色 TeamA中军先锋
        {
            get { return _teamA中军先锋; }
            set
            {
                if (_teamA中军先锋 != value) { _teamA中军先锋 = value; SendPropertyChanged("TeamA中军先锋"); }
            }
        }

        private UI角色 _teamA中军后卫;
        public UI角色 TeamA中军后卫
        {
            get { return _teamA中军后卫; }
            set
            {
                if (_teamA中军后卫 != value) { _teamA中军后卫 = value; SendPropertyChanged("TeamA中军后卫"); }
            }
        }

        private UI角色 _teamA右军先锋;
        public UI角色 TeamA右军先锋
        {
            get { return _teamA右军先锋; }
            set
            {
                if (_teamA右军先锋 != value) { _teamA右军先锋 = value; SendPropertyChanged("TeamA右军先锋"); }
            }
        }

        private UI角色 _teamA右军后卫;
        public UI角色 TeamA右军后卫
        {
            get { return _teamA右军后卫; }
            set
            {
                if (_teamA右军后卫 != value) { _teamA右军后卫 = value; SendPropertyChanged("TeamA右军后卫"); }
            }
        }

        #endregion

        #region Team B人物

        private UI角色 _teamB右军先锋;
        public UI角色 TeamB右军先锋
        {
            get { return _teamB右军先锋; }
            set
            {
                if (_teamB右军先锋 != value) { _teamB右军先锋 = value; SendPropertyChanged("TeamB右军先锋"); }
            }
        }

        private UI角色 _teamB右军后卫;
        public UI角色 TeamB右军后卫
        {
            get { return _teamB右军后卫; }
            set
            {
                if (_teamB右军后卫 != value) { _teamB右军后卫 = value; SendPropertyChanged("TeamB右军后卫"); }
            }
        }

        private UI角色 _teamB中军先锋;
        public UI角色 TeamB中军先锋
        {
            get { return _teamB中军先锋; }
            set
            {
                if (_teamB中军先锋 != value) { _teamB中军先锋 = value; SendPropertyChanged("TeamB中军先锋"); }
            }
        }

        private UI角色 _teamB中军后卫;
        public UI角色 TeamB中军后卫
        {
            get { return _teamB中军后卫; }
            set
            {
                if (_teamB中军后卫 != value) { _teamB中军后卫 = value; SendPropertyChanged("TeamB中军后卫"); }
            }
        }

        private UI角色 _teamB左军先锋;
        public UI角色 TeamB左军先锋
        {
            get { return _teamB左军先锋; }
            set
            {
                if (_teamB左军先锋 != value) { _teamB左军先锋 = value; SendPropertyChanged("TeamB左军先锋"); }
            }
        }

        private UI角色 _teamB左军后卫;
        public UI角色 TeamB左军后卫
        {
            get { return _teamB左军后卫; }
            set
            {
                if (_teamB左军后卫 != value) { _teamB左军后卫 = value; SendPropertyChanged("TeamB左军后卫"); }
            }
        }

        #endregion
    }
}
